Escribir-Leer en archivos (caracteres)

Descripcion

Codigo en Java para escribir o leer de archivos (solo caracteres, no datos binarios)

Escribir en archivos

NOTA: la excepcion IOException tiene que se manejada siempre, ya sea con throws o con un bloque try-catch

Usando FileWriter


    import java.io.FileWriter;
    import java.io.IOException;

    public class JavaFiles {


        public static void main(String[] args) throws IOException{
                
            FileWriter archivo = new FileWriter("archivo.txt");
                
            archivo.write("hola que tal");
                
            archivo.close();
        }
    }
        

Encapsulando FileWriter en BufferedWriter


    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.io.IOException;

    public class JavaFiles {


        public static void main(String[] args) throws IOException{
                
            BufferedWriter archivo = new BufferedWriter(new FileWriter("archivo.txt"));
                
            archivo.write("hola que tal");
                
            archivo.close();
        }
    }
        
Leer de archivos

FileReader

FileReader lee caracter a caracter del archivo, cada vez que lee un caracter mueve el puntero del archivo al siguiente caracter


    import java.io.FileReader;
    import java.io.IOException;

    public class JavaFiles {


        public static void main(String[] args) throws IOException{
                
            FileReader archivo = new FileReader("archivo.txt");
        
            int caracter;
        
            while((caracter = archivo.read()) != -1) // EOF en java es -1
                System.out.print((char)caracter);
        
            archivo.close();
        }
    }
        

Encapsulando FileReader en BufferedReader

BufferedReader nos permite utilizar la funcion readLine() que nos permite leer lineas completas en vez de caracter a caracter


    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;

    public class JavaFiles {


        public static void main(String[] args) throws IOException{
                
            BufferedReader archivo = new BufferedReader(new FileReader("archivo.txt"));
        
            String linea;
        
            while((linea = archivo.readLine()) != null) // readline devuelve "null" al llegar al EOF
                System.out.print(linea);
        
            archivo.close();
        }
    }
        
Tags

java | Archivos